
$$.err = function(e){
	debugger;
	this.e = e;
}
$$.err.prototype = new Error();
$$.err.prototype.getInfo = function(){
	return this.errMap[this.e.number & x0FFFF] || '没有对应的错误信息！';
}

$$.err.prototype.errMap = {
	"5029" : "	Array length must be a finite positive integer",
	"5030" : "	Array length must be assigned a finite positive number",
	"5028" : "	Array or arguments object expected",
	"5010" : "	Boolean expected",
	"5003" : "	Cannot assign to a function result",
	"5000" : "	Cannot assign to 'this'",
	"5034" : "	Circular reference in value argument not supported",
	"5006" : "	Date object expected",
	"5015" : "	Enumerator object expected",
	"5022" : "	Exception thrown and not caught",
	"5020" : "	Expected ')' in regular expression",
	"5019" : "	Expected ']' in regular expression",
	"5023" : "	Function does not have a valid prototype object",
	"5002" : "	Function expected",
	"5008" : "	Illegal assignment",
	"5021" : "	Invalid range in character set",
	"5035" : "	Invalid replacer argument",
	"5014" : "	JScript object expected",
	"5001" : "	Number expected",
	"5007" : "	Object expected",
	"5012" : "	Object member expected",
	"5016" : "	Regular Expression object expected",
	"5005" : "	String expected",
	"5017" : "	Syntax error in regular expression",
	"5026" : "	The number of fractional digits is out of range",
	"5027" : "	The precision is out of range",
	"5025" : "	The URI to be decoded is not a valid encoding",
	"5024" : "	The URI to be encoded contains an invalid character",
	"5009" : "	Undefined identifier",
	"5018" : "	Unexpected quantifier",
	"5013" : "	VBArray expected "
}	

l = function(a){
    if(typeof(Response) != 'undefined'){
        Response.write(a);
    }else{
        if(typeof console != 'undefined' && console.log){
            console.log(a);
        }else{
        	l.count++;
        	if(l.count > l.showLimit ){
        		return;
        	}else{
	            if(l.count == l.showLimit ){
		            alert('Too much errors! Not Boring?');
		            return
	            }
	            alert(a);
        	}
        }
    }
}
l.count = 0;
l.showLimit = 5;

Error.newInstance = function(despcription, executionContext, executingMethod, args){
	 this.despcription	   = despcription
	,this.executionContext = executionContext
	,this.executionContext = executingMethod
	,this.args = args;
}